<!doctype html>


<html>
<head>
  <link rel="shortcut icon" href="static/images/favicon.ico" type="image/x-icon">
  <title>nixtransport.js (Closure Library API Documentation - JavaScript)</title>
  <link rel="stylesheet" href="static/css/base.css">
  <link rel="stylesheet" href="static/css/doc.css">
  <link rel="stylesheet" href="static/css/sidetree.css">
  <link rel="stylesheet" href="static/css/prettify.css">

  <script>
     var _staticFilePath = "static/";
  </script>

  <script src="static/js/doc.js">
  </script>

  <meta charset="utf8">
</head>

<body onload="prettyPrint()">

<div id="header">
  <div class="g-section g-tpl-50-50 g-split">
    <div class="g-unit g-first">
      <a id="logo" href="index.html">Closure Library API Documentation</a>
    </div>

    <div class="g-unit">
      <div class="g-c">
        <strong>Go to class or file:</strong>
        <input type="text" id="ac">
      </div>
    </div>
  </div>
</div>





<div class="colmask rightmenu">
<div class="colleft">
    <div class="col1">
      <!-- Column 1 start -->

<div id="title">
       <span class="fn">nixtransport.js</span>
</div>

<div class="g-section g-tpl-75-25">
  <div class="g-unit g-first" id="description">
    Contains the NIX (Native IE XDC) method transport for
 cross-domain communication. It exploits the fact that Internet Explorer
 allows a window that is the parent of an iframe to set said iframe window&#39;s
 opener property to an object. This object can be a function that in turn
 can be used to send a message despite same-origin constraints. Note that
 this function, if a pure JavaScript object, opens up the possibilitiy of
 gaining a hold of the context of the other window and in turn, attacking
 it. This implementation therefore wraps the JavaScript objects used inside
 a VBScript class. Since VBScript objects are passed in JavaScript as a COM
 wrapper (like DOM objects), they are thus opaque to JavaScript
 (except for the interface they expose). This therefore provides a safe
 method of transport.


 Initially based on FrameElementTransport which shares some similarities
 to this method.
  </div>
  

        <div class="g-unit" id="useful-links">
          <div class="title">Useful links</div>
          <ol>
            <li><a href="closure_goog_net_xpc_nixtransport.js.source.html"><span class='source-code-link'>Source Code</span></a></li>
          </ol>
        </div>
</div>

<h2 class="g-first">File Location</h2>
  <div class="g-section g-tpl-20-80">
    <div class="g-unit g-first">
      <div class="g-c-cell code-label">net/xpc/nixtransport.js</div>
    </div>
  </div>
<hr/>


  <h2>Classes</h2>
 <div class="fn-constructor">
        <a href="class_goog_net_xpc_NixTransport.html">
          goog.net.xpc.NixTransport</a><br/>
        <div class="class-details">NIX method transport.

NOTE: NIX method tested in all IE versions starting from 6.0.</div>
 </div>
      
<br/>

  <div class="legend">
        <span class="key publickey"></span><span>Public</span>
        <span class="key protectedkey"></span><span>Protected</span>
        <span class="key privatekey"></span><span>Private</span>
  </div>


  <h2>Global Functions</h2>





<div class="section">
  <table class="horiz-rule">


     <tr class="even entry private">
       <td class="access"></td>






  <td>
    <a name="goog.net.xpc.NixTransport.conductGlobalSetup_"></a>


     <div class="arg">
       <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.net.xpc.NixTransport.</span><span class="entryName">conductGlobalSetup_<span class="args">()</span>
        </span>
      </div>


     <div class="entryOverview">
       Conducts the global setup work for the NIX transport method.
This function creates and then injects into the page the
VBScript code necessary to create the NIX wrapper class.
Note that this method can be called multiple times, as
it internally checks whether the work is necessary before
proceeding.
     </div>

   
  </td>


  <td class="view-code">
     <a href="closure_goog_net_xpc_nixtransport.js.source.html#line140">code &raquo;</a>
  </td>
     </tr>


  </table>
</div>



  <h2>Global Properties</h2>





<div class="section">
  <table class="horiz-rule">


     <tr class="even entry public">
       <td class="access"></td>





  <a name="goog.net.xpc.NixTransport.NIX_CREATE_CHANNEL"></a>

  <td>


     <div class="arg">
        <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.net.xpc.NixTransport.</span><span class="entryName">NIX_CREATE_CHANNEL</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
     </div>


     <div class="entryOverview">
       The name of the create channel method used by the wrapper class
when calling the transport.
     </div>

  </td>


  <td class="view-code">
     <a href="closure_goog_net_xpc_nixtransport.js.source.html#line121">Code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry public">
       <td class="access"></td>





  <a name="goog.net.xpc.NixTransport.NIX_GET_WRAPPER"></a>

  <td>


     <div class="arg">
        <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.net.xpc.NixTransport.</span><span class="entryName">NIX_GET_WRAPPER</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
     </div>


     <div class="entryOverview">
       Global name of the GetWrapper VBScript function. This
constant is used by JavaScript to call this function.
Note that this function will be stored in the *global*
namespace (i.e. window in browsers).
     </div>

  </td>


  <td class="view-code">
     <a href="closure_goog_net_xpc_nixtransport.js.source.html#line107">Code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry public">
       <td class="access"></td>





  <a name="goog.net.xpc.NixTransport.NIX_HANDLE_MESSAGE"></a>

  <td>


     <div class="arg">
        <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.net.xpc.NixTransport.</span><span class="entryName">NIX_HANDLE_MESSAGE</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
     </div>


     <div class="entryOverview">
       The name of the handle message method used by the wrapper class
when calling the transport.
     </div>

  </td>


  <td class="view-code">
     <a href="closure_goog_net_xpc_nixtransport.js.source.html#line114">Code &raquo;</a>
  </td>
     </tr>


     <tr class="odd entry public">
       <td class="access"></td>





  <a name="goog.net.xpc.NixTransport.NIX_ID_FIELD"></a>

  <td>


     <div class="arg">
        <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.net.xpc.NixTransport.</span><span class="entryName">NIX_ID_FIELD</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
     </div>


     <div class="entryOverview">
       A &quot;unique&quot; identifier that is stored in the wrapper
class so that the wrapper can be distinguished from
other objects easily.
     </div>

  </td>


  <td class="view-code">
     <a href="closure_goog_net_xpc_nixtransport.js.source.html#line129">Code &raquo;</a>
  </td>
     </tr>


     <tr class="even entry public">
       <td class="access"></td>





  <a name="goog.net.xpc.NixTransport.NIX_WRAPPER"></a>

  <td>


     <div class="arg">
        <img align="left" src="static/images/blank.gif">

        <span class="entryNamespace">goog.net.xpc.NixTransport.</span><span class="entryName">NIX_WRAPPER</span>
        : <div class="fullType"><span class="type"><a href="http://www.google.com/url?sa=D&q=https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String">string</a></span></div>
     </div>


     <div class="entryOverview">
       Global name of the Wrapper VBScript class.
Note that this class will be stored in the *global*
namespace (i.e. window in browsers).
     </div>

  </td>


  <td class="view-code">
     <a href="closure_goog_net_xpc_nixtransport.js.source.html#line97">Code &raquo;</a>
  </td>
     </tr>


  </table>
</div>



      <!-- Column 1 end -->
    </div>

        <div class="col2">
          <!-- Column 2 start -->
          <div class="col2-c">
            <h2 id="ref-head">Directory xpc</h2>
            <div id="localView"></div>
          </div>

          <div class="col2-c">
            <h2 id="ref-head">File Reference</h2>
            <div id="sideFileIndex" rootPath="closure/goog" current="net/xpc/nixtransport.js"></div>
          </div>
          <!-- Column 2 end -->
        </div>
</div>
</div>

</body>
</html>
